﻿'    Copyright (C) 2007 TibiaTek Development Team
'
'    This file is part of TibiaTek Bot.
'
'    TibiaTek Bot is free software: you can redistribute it and/or modify
'    it under the terms of the GNU General Public License as published by
'    the Free Software Foundation, either version 3 of the License, or
'    (at your option) any later version.
'
'    TibiaTek Bot is distributed in the hope that it will be useful,
'    but WITHOUT ANY WARRANTY; without even the implied warranty of
'    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
'    GNU General Public License for more details.
'
'    You should have received a copy of the GNU General Public License
'    along with TibiaTek Bot. If not, see http://www.gnu.org/licenses/gpl.txt
'    or write to the Free Software Foundation, 59 Temple Place - Suite 330,
'    Boston, MA 02111-1307, USA.

Imports System.Text.RegularExpressions

Public Interface ICommandParser

#Region " Delegates "
    Delegate Sub CommandCallback(ByVal Arguments As GroupCollection)
#End Region

#Region " Methods "
    Function Add(ByVal CommandName As String, ByVal Callback As CommandCallback) As Boolean
    Function Add(ByVal CommandNames() As String, ByVal Callback As ICommandParser.CommandCallback) As Boolean
    Function Invoke(ByVal CommandAndParameter As String) As Boolean
    Function Invoke(ByVal CommandName As String, ByVal Arguments As GroupCollection) As Boolean
    Function Remove(ByVal CommandName As String) As Boolean
    Function Remove(ByVal CommandNames() As String) As Boolean
#End Region

End Interface

